package com.lsec.springbootinit.model.entity;

import com.lsec.springbootinit.model.common.BaseDO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;


/**
 * 用户表(User)实体类
 *
 * @author Cherry
 * @date 2023 /06/12
 */
@Schema(description = "用户表(User)实体类")
@EqualsAndHashCode(callSuper = true)
@Data
@AllArgsConstructor
@NoArgsConstructor
public class SysUser extends BaseDO {

    /**
     * 主键
     */
    @Schema(description = "主键")
    private Long id;
    /**
     * 用户名
     */
    @Schema(description = "用户名")
    private String username;
    /**
     * 昵称
     */
    @Schema(description = "昵称")
    private String nickname;
    /**
     * 密码
     */
    @Schema(description = "密码")
    private String password;
    /**
     * 账号状态（0正常 1停用）
     */
    @Schema(description = "账号状态（0正常 1停用）")
    private Integer status;
    /**
     * 邮箱
     */
    @Schema(description = "邮箱")
    private String email;
    /**
     * 手机号
     */
    @Schema(description = "手机号")
    private String mobile;
    /**
     * 用户性别（0男，1女，2未知）
     */
    @Schema(description = "用户性别（0男，1女，2未知）")
    private Integer sex;
    /**
     * 头像
     */
    @Schema(description = "头像")
    private String avatar;
    /**
     * 用户类型（0 管理员，1 普通用户）
     */
    @Schema(description = "用户类型（0 管理员，1 普通用户）")
    private Integer userType;
    /**
     * 备注
     */
    @Schema(description = "备注")
    private String remark;
    /**
     * 最后登录ip
     */
    @Schema(description = "最后登录ip")
    private String loginIp;
    /**
     * 最后登录时间
     */
    @Schema(description = "最后登录时间")
    private LocalDateTime loginDate;

}

